//控制器：书写与商品相关的业务逻辑
const {
   findAll,
   saveOne,
   deleteOneById
}=require('../model/shopModel')

const allShop=(req,resp)=>{
   //用model里面定义的findAll()方法来查询数据库里的所有数据，并返回给前端json
   //依赖model的方法
   findAll().then(docs=>{
      resp.json({
         code:200,
         body:{
            list:docs
         }
      })
   }).catch(()=>{
      resp.json({
         code:201,
         body:{
            list:[]
         }
      })
   })
}
//添加商品
const addShop=(req,resp)=>{
   // 由于req.query是从url上解析出来的参数，所以属性值都是字符串
  const {name, price, num} = req.query
  saveOne({
    name,
    price: Number(price),
    num: Number(num)
  }).then(doc => {
    resp.json({
      code: 200,
      body: {
        msg: '添加商品成功',
        doc
      }
    })
  }).catch(() => {
    resp.json({
      code: 201,
      body: {
        msg: '网络错误，请重试'
      }
    })
  })
}
const deleteShop= (req,resp) =>{
   const {id}=req.query
   console.log(id)
   deleteOneById(id).then(()=>{
      resp.json({
         code:200,
         body:{
            msg:'删除成功'
         }
      })
   }).catch(()=>{
      resp.json({
         code:201,
         body:{
            msg:'删除失败，请重试'
         }
      })
   })
}
module.exports={
   allShop,
   addShop,
   deleteShop
}